Package-level declarations

Types

Link copied to clipboard
@Serializable
@SerialName(value = "CARD")
data class CardPromotion(val id: String, val storeId: String, val name: String, val discountPolicy: PromotionDiscountPolicy, val totalBudget: Long, val maxDiscountAmount: Long? = null, val spentAmount: Long, val currency: Currency, val startAt: @Serializable(with = InstantSerializer::class) Instant, val endAt: @Serializable(with = InstantSerializer::class) Instant, val terminatedAt: @Serializable(with = InstantSerializer::class) Instant? = null, val cardCompany: PromotionCardCompany, val status: PromotionStatus, val createdAt: @Serializable(with = InstantSerializer::class) Instant, val recoverOption: PromotionRecoverOption) : Promotion.Recognized

카드 프로모션

Link copied to clipboard
@Serializable(with = PromotionSerializer::class)
sealed interface Promotion

프로모션

Link copied to clipboard
@Serializable
@SerialName(value = "AMOUNT")
data class PromotionAmountDiscountScheme(val amount: Long) : PromotionDiscountScheme.Recognized
Link copied to clipboard
@Serializable(with = PromotionCardCompanySerializer::class)
sealed interface PromotionCardCompany

프로모션 적용 가능한 카드사

Link copied to clipboard
class PromotionClient(apiSecret: String, apiBase: String = "https://api.portone.io", storeId: String? = null) : Closeable
Link copied to clipboard
@Serializable
data class PromotionDiscountPartition(val amountFrom: Long, val scheme: PromotionDiscountScheme)

금액 구간별 프로모션 할인 정책

Link copied to clipboard
@Serializable
data class PromotionDiscountPolicy(val partitions: List<PromotionDiscountPartition>)

프로모션 할인 정책

Link copied to clipboard
@Serializable(with = PromotionDiscountSchemeSerializer::class)
sealed interface PromotionDiscountScheme
Link copied to clipboard
@Serializable
@SerialName(value = "PERCENT")
data class PromotionPercentDiscountScheme(val percent: Int) : PromotionDiscountScheme.Recognized
Link copied to clipboard
@Serializable(with = PromotionRecoverOptionSerializer::class)
sealed interface PromotionRecoverOption
Link copied to clipboard
@Serializable
@SerialName(value = "NO_RECOVER")
data class PromotionRecoverOptionNoRecover(val spareBudget: PromotionSpareBudget? = null) : PromotionRecoverOption.Recognized

결제 취소 시 프로모션 예산 미복구

Link copied to clipboard
@Serializable
@SerialName(value = "RECOVER")
data object PromotionRecoverOptionRecover : PromotionRecoverOption.Recognized

결제 취소 시 프로모션 예산 복구

Link copied to clipboard
@Serializable(with = PromotionSpareBudgetSerializer::class)
sealed interface PromotionSpareBudget
Link copied to clipboard
@Serializable
@SerialName(value = "AMOUNT")
data class PromotionSpareBudgetAmount(val amount: Long) : PromotionSpareBudget.Recognized
Link copied to clipboard
@Serializable
@SerialName(value = "PERCENT")
data class PromotionSpareBudgetPercent(val percent: Int) : PromotionSpareBudget.Recognized
Link copied to clipboard
@Serializable(with = PromotionStatusSerializer::class)
sealed interface PromotionStatus